#ifndef __edaExpCoolingSchedule_h__
#define __edaExpCoolingSchedule_h__

#include "edaCoolingSchedule.h"

class edaExpCoolingSchedule: public edaCoolingSchedule
{
  /**
   * Default constructor
   */
 public:
  edaExpCoolingSchedule() {};
  edaExpCoolingSchedule(double _threshold, double _ratio);
  virtual edaCoolingSchedule *clone() const;
  bool check(double &temperature);
  virtual void Serialize(edaBuffer &buf, bool pack);
    
  setClassID(_SYSCLASSID_ + _CLSID_EXP_COOLING_SCHEDULE_);

 private:
  // Temperature threshold
  double threshold;
  // The ratio of decrease
  double ratio;
};

#endif
